#include<iostream>
#include<cstdlib>
#include"LinkNode.h"
using namespace std;

// 注意，使用引用才不会断链
void Recur_Delete_X(LinkNode*& L, ElemType x)
{
	if (!L)
		return;
	if (L->data == x)
	{
		LinkNode* tmp = L;
		L = L->next;
		free(tmp);
		return;
		// 如果需要删除全部值为x的节点，则继续
		// Recur_Delete_X(L, x);
	}
	else {
		Recur_Delete_X(L->next, x);
	}
}

int main()
{
	LinkNode* L;
	int a[] = { 1,5,3,2,4 };
	CreateList(L, a, 5);
	Recur_Delete_X(L, 1);

	DispList(L);

	return 0;
}